package pe.com.losportales.sigespub.dao.impl;

import java.sql.CallableStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

import pe.com.losportales.sigespub.dao.ClienteDao;
import pe.com.losportales.sigespub.dao.Coneccion;
import pe.com.losportales.sigespub.modelo.Cliente;

public class ClienteDaoImpl implements ClienteDao {

	@Override
	public List<Cliente> obtenerClientes(String razonSocial)
			throws Exception {
		// TODO Auto-generated method stub
		List<Cliente> listaClientes = new ArrayList<Cliente>();
		try{
			Cliente cliente = null;
			CallableStatement cstmt = Coneccion.getConnection().prepareCall("{call UP_LISTAR_CLIENTES(?)}");
			cstmt.setString(1, razonSocial);
			cstmt.execute();
			ResultSet rs = cstmt.getResultSet();
			while (rs.next()) {
				cliente = new Cliente();
				cliente.setCodigo(rs.getInt("COD_CLIENTE"));
				cliente.setRuc(rs.getString("RUC_CLIENTE"));
				cliente.setRazonSocial(rs.getString("RAZ_SOC_CLIENTE"));
				cliente.setDireccion(rs.getString("DIR_CLIENTE"));
				listaClientes.add(cliente);
			}
			rs.close();
			cstmt.close();
		}catch(SQLException s){
			throw new Exception(s);
		}finally{
			if( Coneccion.getConnection()!=null)
				Coneccion.getConnection().close();
		}
		
		
	
		
		return listaClientes;
	}

}
